package cn.wolfcode.rbac.util;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @author Lu.F
 * @version 1.0
 * @Description TODO
 * @date 2022/5/14 15:51
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class JsonData {


    /**
     * 状态码 0 成功 -1 失败 1 运行中
     */
    private int code;

    /**
     * 提示信息
     */
    private String msg;

    /**
     * 数据
     */
    private Object data;


    /**
     * 成功返回数据
     * @param data
     * @return
     */
    public static JsonData buildSuccess(Object data){
        return new JsonData(0,"",data);
    }

    /**
     * 成功不返回数据
     * @return
     */
    public static JsonData buildSuccess(){
        return new JsonData(0,"","");
    }

    /**
     * 失败
     * @param msg
     * @return
     */
    public static JsonData buildError(String msg) {
        return new JsonData(-1,msg,"");
    }


    /**
     * 失败，自定义状态码 和消息
     * @param code
     * @param msg
     * @return
     */
    public static JsonData buildError(int code,String msg){
        return new JsonData(code,msg,"");
    }
}
